package com.yeban.base.day05.homework;

import java.util.Scanner;

/**
 * @Desc TODO
 * @Author yeban
 * @Date 2025/9/27
 */
// 哥德巴赫猜想
public class Test01 {

    // 判断是否为奇素数
    public static boolean isNumber(int num) {

        // 判断是否小于1 或者 是否为奇数
        if (num <= 1 || num % 2 == 0) {
            return false;
        }

        // 判断是否为素数
        for(int i = 3; i <= num - 1; i +=2){
            if(num % i == 0) {
                return false;
            }
        }

        return true;
    }

    public static void main(String[] args) {

        // 提示输入信息
        Scanner sc = new Scanner(System.in);
        while(true) {
            System.out.print("请输入一个数字：");
            int number = sc.nextInt();

            // 输入的是0，表示想退出输入
            if (number == 0) {
                System.out.println("退出输入！");
                break;
            }

            // 数字0~6或者数为奇数：重新输入
            if (number < 6 || number % 2 != 0) {
                System.out.println("请输入一个不小于6的偶数。");
                continue;
            }

            boolean found = false;
            // 循环遍历获取目标奇素数
            for (int i = 3; i < number; i += 2) {
                // 当i为奇素数时，找j为奇素数时的情况
                if (isNumber(i)) {
                    for (int j = i; j < number; j += 2) {
                        if (isNumber(j) && i + j == number && i != j) {
                            System.out.println(number + " = " + i + " + " + j);
                            found = true;
                            break;
                        }
                    }
                }

                if (found) {
                    break;
                }
            }
            if(!found) {
                System.out.println("没有找到合适的素数组合");
            }
        }
    }
}
